# ifndef DEF_MAP
# define DEF_MAP

# include "Source.h"

class Map
{
	public:

	Map();
	~Map();	
	
	Ogre::Plane* getGround();

	ObjectAction* findAction( const Ogre::String&);

	void init( Renderer*, const std::string&);
	void loadMap( const Ogre::String&);
	void unloadMap();

	void addObjectPickUp( const std::string&, const Ogre::Vector3&);
	void deleteObjectPickUp( ObjectPickUp*);

	private:

	Renderer* myRenderer;
	std::string myLua;

	Ogre::SceneNode* mySceneNode;
	Ogre::Entity* myTerrain;

	Ogre::Plane* myPlane;

	std::vector<Obstacle*> myObstacles;
	std::vector<ObjectConnect*> myConnections;
	std::vector<Chest*> myChests;
	std::vector<ObjectPickUp*> myObjects;
};

# endif